//package com.wz.boot.listener;
//
//
//import com.wz.boot.pojo.ZoneMsg;
//import love.forte.common.ioc.annotation.Beans;
//import love.forte.common.ioc.annotation.Depend;
//import love.forte.simbot.annotation.OnPrivate;
//import love.forte.simbot.api.message.MessageContentBuilderFactory;
//import love.forte.simbot.api.message.events.PrivateMsg;
//import love.forte.simbot.api.sender.Sender;
//
//import java.time.LocalDateTime;
//import java.time.format.DateTimeFormatter;
//import java.util.ArrayList;
//import java.util.List;
//
//@Beans
//public class On {
//
//    /**
//     * 空间动态一下最多发9条消息（图片），故此值的范围在0-9之间
//     * 0代表没有图片，只有文本
//     * 1-9代表有图片
//     */
//    private static int maxZoneMsgSize = 9;
//
//    @Depend
//    private MessageContentBuilderFactory messageContentBuilderFactory;
//
//    //ZoneMsg队列，最大Size为maxZoneMsgSize
//    List<ZoneMsg> zoneMsgList = null;
//
//    // 筹齐9条消息的开始时间
//    LocalDateTime localDateTime;
//
//    // 记录被Warn的客户，等下一波开始的时候，通知他们
//    List<PrivateMsg> shouldBeNotified = new ArrayList<>();
//
//    /**
//     *
//     * 1. 低于1小时未筹齐9条消息，继续筹集
//     * 2. 1小时内筹齐9条消息的，立刻发送，并重新计时
//     * 3. 1小时内没筹齐9条消息的，1小时后，立刻发送，并重新计时
//     *
//     */
//    @OnPrivate
//    public void onPrivate(PrivateMsg privateMsg, Sender sender){
//        sender.sendPrivateMsg(privateMsg,privateMsg.getMsgContent());
//
////        MessageContent msgContent = privateMsg.getMsgContent();
////        sender.sendPrivateMsg(privateMsg, msgContent);
//
//    }
//
//    /**
//     * ZoneMsg发送器
//     * @param zoneMsgList
//     * @return 是否发送成功
//     */
//    public boolean qqzoneSend(List<ZoneMsg> zoneMsgList){
////        new Timer().schedule(new TimerTask() {
////            @Override
////            public void run() {
////                try {
////                    //do Something
////                } catch (Exception e) {
////                    e.printStackTrace();
////                }
////            }
////        },0,5L * 60 * 1000);
//        return true;
//    }
//
//    private String formatDate(LocalDateTime localDateTime){
//        return DateTimeFormatter.ofPattern("HH点mm分ss秒").format(localDateTime);
//    }
//
//
//    /**
//     * 是否包含指定Id
//     */
//    private boolean containsId(List<ZoneMsg> zoneMsgList, String id){
//        for (ZoneMsg zoneMsg : zoneMsgList) {
//            if(id.equals(zoneMsg.getAccountCode()))
//                return true;
//        }
//        return false;
//    }
//
//
//
//
//}
